home *** CD-ROM | disk | FTP | other *** search
/ Amiga Collections: Purity / Purity #34 (1994-08)(Diesel)(DE)[WB].zip / Purity #34 (1994-08)(Diesel)(DE)[WB].adf / AppIcon / AppIcon1.p < prev    next >
Text File  |  1994-08-06  |  2KB  |  68 lines

  1. { Proramm:   AppIcon1
  2.  
  3.   Version:   0.01
  4.  
  5.   Datum:     16.06.94
  6.  
  7.   Sprache:   KickPascal 2.12/OS2-Includes
  8.  
  9.   Sinn:      Programm zeigt wie man ein einfaches AppIcon auf der WB
  10.              programmiert und wie man mit selbigen arbeitet
  11.  
  12.   Autor:     PackMAN
  13.              c/o Falk Zühlsdorff
  14.              Lindenberg 66
  15.              D-98693 Ilmenau/Thüringen
  16.  
  17.   Kommentar: nur für Purity-Pascal-PD-Serie                             }
  18.  
  19. PROGRAM appicon;
  20. USES EXEC;
  21. {$INCL 'dos.lib',
  22.        'workbench/startup.h',
  23.        'workbench/workbench.h',
  24.        'icon.lib',
  25.        'wb.lib'}
  26.  
  27. VAR dobj      : p_DiskObject;
  28.     myPort    : p_MsgPort;
  29.     MyAppIcon : p_AppIcon;
  30.     AppMsg    : p_AppMessage;
  31.     ex        : boolean;
  32.  
  33. BEGIN
  34.  ex:=false;
  35.  IconBase:=OpenLibrary('icon.library',37);
  36.  IF IconBase<>NIL
  37.   THEN
  38.    BEGIN
  39.     workbenchbase:=OpenLibrary('workbench.library',37);
  40.      IF workbenchbase<>NIL
  41.       THEN
  42.        BEGIN
  43.         dobj:=GetDefDiskObject(WBDISK);
  44.         dobj^.do_Type:=0;
  45.         myport:=CreateMsgPort;
  46.         myappicon:=AddAppIconA(0,0,'TestAppIcon',myport,NIL,dobj,NIL);
  47.        { IF myAppIcon<>NIL
  48.          THEN writeln('Icon on the WBScreen'); }
  49.         REPEAT
  50.          AppMsg:=wait_port(myport);
  51.          AppMsg:=get_msg(myport);
  52.          Reply_Msg(AppMsg);
  53.          IF AppMsg^.am_NumArgs=0
  54.           THEN ex:=true;                {Icon aktiviert}
  55.         UNTIL ex;
  56.         ex:=RemoveAppIcon(myAppIcon);
  57.         FreeDiskObject(dobj);
  58.         DeleteMsgPort(myport);
  59.        END;
  60.    END;
  61. END.
  62.  
  63.  
  64.  
  65.  
  66.  
  67.  
  68.